﻿<html DIR="LTR" xmlns:tool="http://www.microsoft.com/tooltip" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ddue="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
  <head>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" />
    <META NAME="save" CONTENT="history" />
    <title>Readme_Custom Report Item Sample</title>
    
    
    
    <style TYPE="text/css">
body
{
background: #FFFFFF;
color: #000000;
font-family:    Verdana;
font-size: medium;
font-style: normal;
font-weight: normal;
margin-top: 0;
margin-bottom:  0;
margin-left:    0;
margin-right:   0;
width:  100%;
}

div.#mainSection
{
font-size: 70%;
width: 100%;
padding-left:    10;
margin-right: 10;
}

div.#mainBody
{
font-size: 90%;
margin-top: 10;
padding-bottom: 20;
}

div.#header
{
background-color: #D2D2D2;
padding-top:    0;
padding-bottom: 0;
padding-left:   10;
padding-right:  0;
width:          100%;
}

div.#header table
{
border-bottom-color: #C8CDDE;
border-bottom-style: solid;
border-bottom-width: 1;
width:  100%;
}

span.#runningHeaderText
{
color: #003399;
font-size: 90%;
}

span.#nsrTitle
{
/*    color: #003399;*/
font-size: 120%;
font-weight: 600;
}

div.#header table td
{
color: #000000;
font-size: 70%;
margin-top: 0;
margin-bottom:  0;
padding-right: 20;
}

div.#header table tr.#headerTableRow3 td
{
padding-bottom: 2;
padding-top: 5;
}

div.#header table.#bottomTable
{
border-top-color: #FFFFFF;
border-top-style: solid;
border-top-width: 1;
text-align: left;
}

div.#footer
{
font-size: 90%;
margin-top: 0;
margin-bottom:  0;
margin-left:    -5;
margin-right:   0;
padding-top:    2;
padding-bottom: 2;
padding-left:   0;
padding-right:  0;
width:  100%;
}

hr.#footerHR
{
border-bottom-color: #EEEEFF;
border-bottom-style: solid;
border-bottom-width: 1;
border-top-color: C8CDDE;
border-top-style: solid;
border-top-width: 1;
height: 3;
color: #D2D2D2;
}

div.section
{
padding-top:    2;
padding-bottom: 2;
padding-right:  15;
width:  100%;
}

.heading
{
color:          #000000;
font-weight:    bold;
margin-top:     18;
margin-bottom:  8;
}

h1.heading
{
color: #000000;
font-size:  150%;
}

.subHeading
{
color:          #000000;
font-weight:    bold;
font-size:      150%;
margin-bottom:  4;
}

h2.subHeading
{
color:          #000000;
font-weight:    bold;
font-size:      130%;
}
h3.subHeading
{
color:  #000000;
font-size: 125%;
font-weight: bold;
}

h4.subHeading
{
color: #000000;
font-size: 110%;
font-weight: bold;
}

h4.procedureHeading
{
color: #000080;
font-size: 110%;
font-weight: bold;
}

h5.subHeading
{
color: #000000;
font-size: 100%;
font-weight: bold;
}

img
{
padding-bottom: 10;
}

img.toggle
{
border: 0;
margin-right: 5;
padding-bottom: 10;
}

img.copyCodeImage
{
border: 0;
margin: 1;
margin-right: 3;
padding-bottom: 10;
}

img.downloadCodeImage
{
border: 0;
margin-right: 3;
padding-bottom: 10;
}

img.viewCodeImage
{
border: 0;
margin-right: 3;
padding-bottom: 10;
}

img.note
{
border: 0;
margin-right: 3;
padding-bottom: 10;
}

img.#membersOptionsFilterImage
{
border: 0;
margin-left: 10;
vertical-align: middle;
padding-bottom: 10;
}

img.#toggleAllImage
{
margin-left: 4;
vertical-align: middle;
padding-bottom: 10;
}

div.#mainSection table
{
border: 0;
font-size: 100%;
width:  100%;
margin-top: 5px;
margin-bottom: 15px;
}

div.#mainSection table tr
{
vertical-align: top;
}

div.#mainSection table th
{
text-align: left;
background: #D8D8D8;
border-bottom-color: #D8D8D8;
border-bottom-style: solid;
border-bottom-width: 1;
color: #000000;
padding-left: 5;
padding-right: 5;
}

div.#mainSection table td
{
background: #F2F2F2;
border-top-color: #D8D8D8;
border-top-style: solid;
border-top-width: 1;
padding-left: 5;
padding-right: 5;
}

div.#mainSection table td.imageCell
{
white-space: nowrap;
}

div.code
{
width: 98%;
}

div.code table
{
border: 0;
font-size: 95%;
margin-bottom: 5;
width: 100%
}

div.code table th
{
text-align: left;
background: #D8D8D8;
border-bottom-color: #D8D8D8;
border-bottom-style: solid;
border-bottom-width: 1;
color: #000000;
font-weight: bold;
padding-left: 5;
padding-right: 5;
}

div.code table td
{
background: #CCCCCC;
border-top-color: #D8D8D8;
border-top-style: solid;
border-top-width: 1;
padding-left: 5;
padding-right: 5;
padding-top: 5;
}

div.alert
{
margin-left: 10;
width: 98%;
}

div.alert table
{
border: 1;
font-size: 100%;
width:  100%;
border: solid 1 #DEDFEF;
}

div.alert table th
{
text-align: left;
background: #D8D8D8;
border-bottom-width: 0;
color: #000000;
padding-left: 5;
padding-right: 5;
border: solid 1 #DEDFEF;
}

div.alert table td
{
background: #FFFFFF;
border-top-color: #D8D8D8;
border-top-style: solid;
border-top-width: 1;
padding-left: 5;
padding-right: 5;
border: solid 1 #DEDFEF;
}

span.copyCode
{
color: #0000ff;
font-size: 90%;
font-weight: normal;
cursor: hand;
float: right;
display: inline;
text-align: right;
}

.downloadCode
{
color: #0000ff;
font-size: 90%;
font-weight: normal;
cursor: hand;
}

.viewCode
{
color: #0000ff;
font-size: 90%;
font-weight: normal;
cursor: hand;
}

div.code pre
{
font-family:    Monospace, Courier New, Courier;
font-size: 105%;
color:  #000000;
}

code
{
font-family:    Monospace, Courier New, Courier;
font-size: 105%;
color:  #000000;
}

dl
{
margin-top: 0;
padding-left:   1;
}

dd
{
margin-bottom:  0;
margin-left:    0;
padding-left:   20;
}

dd p
{
margin-top: 5;
}

ul
{
margin-left: 17;
list-style-type: disc;
}

ul ul
{
margin-bottom: 4;
margin-left: 17;
margin-top: 3;
list-style-type: disc;
}

ol
{
margin-left: 24;
list-style-type: decimal;
}

ol ol
{
margin-left: 24;
margin-top: 3;
list-style-type: lower-alpha;
}

li
{
margin-top: 0;
margin-bottom: 0;
padding-bottom: 0;
padding-top: 0;
margin-left: 5;
}

p
{
margin-bottom: 15;
}

.tip
{
color:  #0000FF;
font-style: italic;
cursor:hand;
text-decoration:underline;
}

.math
{
font-family: Times New Roman;
font-size: 125%
}
.sourceCodeList
{
font-family: Verdana;
font-size: 90%;
}

pre.viewCode
{
width: 100%;
overflow: auto;
}

li:hover table, li.over table
{
background-color: #C0C0C0;
}

li:hover ul, li.over ul
{
background-color: #d2d2d2;
border: 1px solid #000;
display: block;
}
            </style>
  </head>
  <body>
    <!--Topic built:02/12/2008 21:30:29-->

    
    
    
    
    
    
    
    
    
    <div id="header">
      <table width="100%" id="topTable"><tr>
          <td align="left">
            <span id="nsrTitle">Readme_Custom Report Item Sample</span>
          </td>
          <td align="right">
            <span id="headfb" class="feedbackhead">
            </span>
          </td>
        </tr></table>
      
      
      
    </div>
    <div id="mainSection">
      <div id="mainBody"><p> 2/12/2008 9:30:29 PM</p>
        
        <font color="DarkGray">[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.] </font><p /> 
        <span id="changeHistory">
        </span>
    <p>
      This sample works only with SQL Server 2005 and SQL Server 2008. It will not work with any version of SQL Server earlier than SQL Server 2005.
    </p>
    <p>PolygonsCRI is a simple custom report item sample. This sample uses the <b>System.Component</b> classes from the Microsoft .NET Framework and classes from the <b>Microsoft.ReportDesigner</b> and <b>Microsoft.ReportingServices</b> namespaces to implement a custom report item run-time component and design-time component that can be used in Report Builder.</p>
    <div class="alert"><table width="100%" cellspacing="0" cellpadding="0"><tr><th align="left">Important: </th></tr><tr><td>
      Samples are provided for educational purposes only. They are not intended to be used in a production environment and have not been tested in a production environment. Microsoft does not provide technical support for these samples. Sample applications and assemblies should not be connected to or used with your production SQL Server database or your report server without the permission of the system administrator. Microsoft does not provide technical support for these samples. Sample applications and assemblies should not be connected to or used with your production SQL Server database or your report server without the permission of the system administrator. <p />
    </td></tr></table><p /></div>
  <h1 class="heading">Requirements</h1><div id="requirementsSection" class="section">
    <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
      <p xmlns="">You should be familiar with Visual Studio and Microsoft Visual C#, and your system must meet the following requirements to use the PolygonsCRI sample: </p>
      <ul xmlns=""><li>
          
            Microsoft SQL Server with Reporting Services.<br />
        </li><li>
          
            Microsoft SQL Server Business Intelligence Development Studio.<br />
        </li><li>
          
            Microsoft Visual Studio 2005.<br />
        </li><li>
          
            Microsoft .NET Framework 2.0.<br />
        </li><li>
          
            Reporting Services samples. A report server that you have permission to access on your network.<br />
          <div class="alert"><table width="100%" cellspacing="0" cellpadding="0"><tr><th align="left">Note: </th></tr><tr><td>
            Business Intelligence (BI) Development Studio and Visual Studio 2005 are not supported on Itanium-based computers. However, support is available for x64-based computers. If the SQL Server sample databases have been deployed on an Itanium-based computer, use BI Development Studio or Visual Studio on either an x86-based or x64-based computer to modify and run the samples.<p />
          </td></tr></table><p /></div>
        </li></ul>
      <div class="alert" xmlns=""><table width="100%" cellspacing="0" cellpadding="0"><tr><th align="left">Important: </th></tr><tr><td>
        SQL Server samples and sample databases must be downloaded and installed before you can view or work with them. For more information, see <a href="html/e8117979-fe03-441e-be85-894fa616227a.htm">Considerations for Installing SQL Server Samples and Sample Databases</a>.<p />
      </td></tr></table><p /></div>
    </content>
  </div><h1 class="heading">Location</h1><div id="sectionSection0" class="section"><content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
      <p xmlns="">This sample is located by default at:</p>
      <p xmlns="">
        C:\Program Files\Microsoft SQL Server\100\Samples\Reporting Services\
        <code>Extension Samples\CustomReportItem Sample</code>
      </p>
    </content></div><h1 class="heading">Building the Sample</h1><div id="sectionSection1" class="section"><content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
      <p xmlns="">
        	
	<p>If you have not already created a strong name key file, generate the key file using the following instructions.</p>
	<h4 class="procedureHeading">
	
	To generate a strong name key file
	</h4>
	<div id="procedureSectionEDBDBHA" class="section">
	<ol>
	<li>Open a Microsoft Visual Studio 2005 command prompt. Click <b>Start</b>, point to <b>All Programs</b>, point to <b>Microsoft .NET Framework SDK 2.0</b>, and then click <b>SDK Command Prompt</b>.<p>-- or --</p>
	<p>Open a Microsoft .NET Framework command prompt. Click <b>Start</b>, point to <b>All Programs</b>, point to <b>Microsoft .NET Framework SDK 2.0</b>, and then click <b>SDK Command Prompt</b>.</p>
	</li>
	<li>Use the change directory command (CD) to change the current directory of the command prompt window to the folder where the samples are installed.<div class="alert">
	<table width="100%" cellspacing="0" cellpadding="0">
	<tr>
	<th align="left">
	Note:</th>
	</tr>
	<tr>
	<td>To determine the folder where samples are located, click the <b>Start</b> button, point to <b>All Programs</b>, point to <b>Microsoft SQL Server</b>, point to <b>Documentation and Tutorials</b>, and then click <b>Samples Directory</b>. If the default installation location was used, the samples are located in &lt;system_drive&gt;:\Program Files\Microsoft SQL Server\100\Samples.
	</td>
	</tr>
	</table>
	</div>
	</li>
	<li>At the command prompt, run the following command to generate the key file:<p>
	<code>sn -k SampleKey.snk</code>
	</p>
	<div class="alert">
	<table width="100%" cellspacing="0" cellpadding="0">
	<tr>
	<th align="left">
	Important:</th>
	</tr>
	<tr>
	<td>For more information about the strong-name key pair, see "Security Briefs: Strong Names and Security in the .NET Framework" in the .NET Development Center on MSDN.</td>
	</tr>
	</table>
	</div>
	</li>
	</ol>
	</div>

      </p>
      <h4 class="procedureHeading" xmlns="">To build the PolygonsCRI sample</h4><div id="procedureSectionEBBHBHA" class="section" xmlns=""><ol><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Open the PolygonsCRI.sln project file into Visual Studio 2005.</p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">From the <b>Build</b> menu, select <b>Build Solution</b> </p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Open the PolygonsCRI.sln project file in Visual Studio.</p>
            </content>
          </li></ol></div>
    </content></div><h1 class="heading">Deploying the Sample</h1><div id="sectionSection2" class="section"><content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
      <h4 class="procedureHeading" xmlns="">To deploy the PolygonsCRI sample</h4><div id="procedureSectionEBBFBHA" class="section" xmlns=""><ol><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Edit rsreportserver.config to register the PolygonsCRI:</p>
              <ul xmlns=""><li>
                  Insert the following lines before &lt;/<b>Extensions</b>&gt;:<br />
                  <div class="code"><span codeLanguage="other"><table width="100%" cellspacing="0" cellpadding="0"><tr><th align="left" /></tr><tr><td colspan="2"><pre>&lt;ReportItems&gt;
   &lt;ReportItem Name="Polygons" Type="Microsoft.Samples.ReportingServices.PolygonsCRI,PolygonsCRI"/&gt;
&lt;/ReportItems&gt;</pre></td></tr></table></span></div>
                </li></ul>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Edit the rssrvpolicy.config file to add a code group for the custom report item:</p>
              <ul xmlns=""><li>
                  Add the following lines:<br />
                  <div class="code"><span codeLanguage="other"><table width="100%" cellspacing="0" cellpadding="0"><tr><th align="left" /></tr><tr><td colspan="2"><pre>&lt;CodeGroup 
   class="UnionCodeGroup" 
   version="1" 
   PermissionSetName="FullTrust"
   Description="This code group grants PolygonsCRI.dll FullTrust permission. "&gt;
   &lt;IMembershipCondition 
   class="UrlMembershipCondition"
   version="1"
   Url="C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin\PolygonsCRI.dll" /&gt;
&lt;/CodeGroup&gt;</pre></td></tr></table></span></div>
                </li></ul>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Edit the rsreportdesigner.config file to register the run-time component, the design-time component, and the item type converter:</p>
              <ul xmlns=""><li>
                  Add the following lines before <b>&lt;/Extensions&gt;</b>:<br />
                  <div class="code"><span codeLanguage="other"><table width="100%" cellspacing="0" cellpadding="0"><tr><th align="left" /></tr><tr><td colspan="2"><pre>&lt;ReportItems&gt;
   &lt;ReportItem Name="Polygons" Type="Microsoft.Samples.ReportingServices.PolygonsCRI,PolygonsCRI"/&gt;
&lt;/ReportItems&gt;
&lt;ReportItemDesigner&gt;
   &lt;ReportItem Name="Polygons" Type=" Microsoft.Samples.ReportingServices.PolygonsDesigner, PolygonsDesigner" /&gt;
&lt;/ReportItemDesigner&gt;
&lt;ReportItemConverter&gt;
   &lt;Converter Source="Chart" Target="Polygons" Type=" Microsoft.Samples.ReportingServices.PolygonsConverter, PolygonsDesigner" /&gt;
&lt;/ReportItemConverter&gt;</pre></td></tr></table></span></div>
                </li></ul>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Copy the PolygonsCRI.dll file from the \PolygonCRI\Bin\Debug directory where you copied the sample project to the Visual Studio private assemblies directory (by default, \Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies).</p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Copy the PolygonsCRI.dll file from the \PolygonCRI \Bin\Debug directory where you copied the sample project to the Microsoft SQL Server Reporting Services bin directory (by default, \Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\Bin).</p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Copy the PolygonsDesigner.dll file from the \PolygonDesigner\Bin\Debug directory to the Visual Studio private assemblies directory (by default, \Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies).</p>
            </content>
          </li></ol></div>
    </content></div><h1 class="heading">Running the Sample</h1><div id="sectionSection3" class="section"><content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
      <p xmlns="">This section contains a quick walkthrough that shows how to reference the Polygon custom report item in Visual Studio and then test it.</p>
      <h4 class="procedureHeading" xmlns="">To add PolygonDesigner to the Visual Studio toolbox</h4><div id="procedureSectionEHBDBHA" class="section" xmlns=""><ol><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Right-click in the Visual Studio toolbox.</p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Select <b>Choose items</b>.</p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Navigate to the \Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies folder and select <b>PolygonsDesigner.dll</b>.</p>
            </content>
          </li></ol></div>
      <h4 class="procedureHeading" xmlns="">To run the sample</h4><div id="procedureSectionEFBDBHA" class="section" xmlns=""><ol><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Open the \PolygonsReport\Polygons.sln sample report project in Visual Studio.</p>
            </content>
          </li><li>
            <content xmlns="http://ddue.schemas.microsoft.com/authoring/2003/5">
              <p xmlns="">Click on the <b>Preview</b> tab in the sample report, or deploy the sample report to the server and run the sample report.</p>
            </content>
          </li></ol></div>
      <p xmlns="">To edit a report using the PolygonDesigner custom control in Visual Studio, you can do any of the following:</p>
      <ul xmlns=""><li>
          Set the properties of the polygons control in the property browser.<br />
        </li><li>
          Edit properties via the control's context menu.<br />
        </li><li>
          Drag fields onto the drop areas of the control from the fields list.<br />
        </li><li>
          Select the chart and in the context menu choose <b>Convert to Polygons</b>.<br />
        </li></ul>
    </content></div><h1 class="heading">See Also</h1><div id="seeAlsoSection" class="section" name="collapseableSection"><h4 class="subHeading">Tasks</h4><a href="html/317946aa-8e95-4f0b-8170-394c9d5e184e.htm">Compiling and Running Code Examples</a><br /><a href="html/b64c262f-a84f-4bae-9652-b00a29c7b981.htm">Reporting Services Samples</a><br /><h4 class="subHeading">Other Resources</h4><b>Custom Report Item Implementation Requirements</b><br /><a href="html/39e60ece-4a7d-4aa6-9fe8-fb5fc429899f.htm">Extension Samples (Reporting Services)</a><br /><br />
		<h4 class="subHeading">
			Help and Information
		</h4>
		<b>
			
			Getting SQL Server 2008 Assistance
		</b>
	</div><!--[if gte IE 5]>
			<tool:tip element="seeAlsoToolTip" avoidmouse="false"/><tool:tip element="languageFilterToolTip" avoidmouse="false"/><tool:tip element="roleInfoSpan" avoidmouse="false"/>
		<![endif]--></div>
      <div id="footer">
			
			© 2008 Microsoft Corporation. All rights reserved.
		</div>
    </div>
  </body>
</html>